设计模式在各种语言中都有很重要的应用,每种设计模式都有其特有的优点以及使用场景。接下来,将从单例模式、工厂模式、组合模式以及策略模式四个模式,介绍设计模式及其实际项目中的简单应用。
一、单例模式
单例模式的作用是让这个类只能产生一个实例,适用于创建全局变量
控制一个类只能生成一个实例的方法就是设定静态方法
下面的单例模式示例,创建了web的配置类Config,使得整个web应用程序可以使用同一个配置对象:
<?php
class Config{
static private $_instance = NULL;
private $_settings = array(); //用来存储配置信息
private function __construct(){}
private function __clone(){}
static function getInstance(){ //静态方法实例化类
if(self::$_instance == NULL){
self::$_instance = new Config();
}
return self::$_instance;
}
function set($index, $value){
$this->_settings[$index] = $value;
}
function get($index){
return$this->_settings[$index];
}
}
?>
调用这个类: